草庐IT

PHP readdir 和排序

全部标签

mysql - SQL 按日期和时间排序

具有包含字段“日期”(YYYY-MM-dd)和“时间”(hh:mmam/pm)的表格,但时间有时可能为空。是否可以使用这种结构按日期和时间订购商品? 最佳答案 是的,您可以用逗号分隔列名来实现此目的:ORDERBYdate,time您需要适本地处理“空白”时间(即它们应该放在结果集中非空白之前还是之后):ORDERBYdate,timeDESC更新适当处理上午和下午为了实现这一点,您可以使用SUBSTRING_INDEXfunction:ORDERBYdate,SUBSTRING_INDEX(time,"",-1),SUBSTRIN

mysql - 在 Rails 中用数字和文本对字符串进行排序

在我的数据库中,我有一个包含成绩的名称列的表,例如1.grade、2.grade等等。当数字达到10或更多时,排序不会像我希望的那样工作,因为10.grade在排序记录集中的2.grade之前。我知道这是因为字符串排序不同于整数排序。问题是如何以数字方式对这些字符串进行排序。因为成绩记录是使用ancestry插件构建的树的一部分,所以我必须将整个排序代码放在:order=>“(一些对结果进行排序的代码)”中。我试过:order=>"CAST(SUBSTRING_INDEX(name,'.')ASSIGNED)"。但这不起作用。我在开发环境中使用SQLite,在生产环境中使用MySQL。

mysql - 同表父子排序

我有一张这样的table-idnameorderingcatid1parent1102parent2203parent3304child11115child12216child21127child22228child31139child3223我正在尝试获得如下结果-idnameorderingcatid1parent1104child11115child12212parent2206child21127child22223parent3308child31139child3223我想订购第一个parent(catid=0)而不是它的child而不是第二个parent及其child。这

mysql - 优化查询——它正在使用文件排序。 (包括解释、查询和显示创建表)

我想知道为什么我的查询没有使用索引“created_2”,它涵盖了查询中使用的所有字段。它似乎使用了文件排序。选择索引的规则是什么?查询:SELECT*FROM(`stories`)WHERE`image_full_url`!=''AND`order`!=0ORDERBY`created`DESC,`order`DESCLIMIT5创建表:|stories|CREATETABLE`stories`(`id`varchar(255)COLLATEutf8_unicode_ciNOTNULL,`news_type`varchar(255)COLLATEutf8_unicode_ciDEFA

mysql - 在 "key-value"表上查询和排序

我有一个问题,我的SQL太基础了,无法克服它。我有两个表:表1id(int)-(主键)电子邮件(字符)其他领域...表2id(int)-(这不是主键也不是唯一的。这是关于TABLE1.id的外键)键(字符)值(字符)其他领域...第二个表的结构是“key-value”。对于每个TABLE1.id,我在TABLE2中都有“许多”行,其中TABLE1.id==TABLE2.id。特别是我可以有以下情况:TABLE1中的一行id=10,email="albert.einstein@genius.com",(otherfieldsomitted)...TABLE2中的对应行id=10,key=

mysql - 在区分大小写的列中进行不区分大小写的搜索(以及不区分大小写的排序)

我有一个区分大小写的列(utf8_bin排序规则)。我需要不区分大小写地搜索字符串并对结果进行不区分大小写的排序。已编写此查询。SELECTcustomer_nameFROMcustomersWHERECONVERT(customer_nameUSINGUTF8)LIKE'aB%'ORDERBYCONVERT(customer_nameUSINGUTF8)LIMIT0,10这样有效率吗?还是有更好的方法来实现这一目标? 最佳答案 转换成大写呢?SELECTcustomer_nameFROMcustomersWHEREUPPER(cu

mysql - 如何在 MySQL 的子查询中按 MAX(date) 进行排序?

我遇到了这个查询的问题:我有两个表:样本和歌曲我要选择pathNamefromsamplesid_userfromsamplesidfromsongsnamefromsongs每个样本属于一首歌曲:我想将共享相同歌曲ID的每个样本分组,以便选择最后一个日期。所以我像这样在两个表之间进行连接:$query='SELECTsamples.pathNamepath_name,samples.id_userid_user,songs.idid_song,songs.namesong_nameFROM(SELECT*,MAX(date)ASmaxDateFROMsamplesGROUPBYid_

python - 在 SQLAlchemy 中按子查询排序

我正在尝试选择最新的线程(Thread),按最近回复它们的时间降序排列(回复是一个Post模型,这是一个标准的论坛查询)。在SQL中我会这样写:SELECT*FROMthreadAStORDERBY(SELECTMAX(posted_at)FROMpostWHEREthread_id=t.id)DESC我如何在SQLAlchemy中做这样的事情?我试过这样的事情:scalar=db.select[func.max(Post.posted_at)].where(Post.thread_id==Thread.id).as_scalar()threads=Thread.query.order

php - SQL : How to Count occurrences in TableA, 与表连接,然后按出现次数排序?

我想要的:对于连接到Group_ID=1的每个用户,我想计算该用户参加的事件数量,并使用该信息按参加次数最多的用户DESC(结束)进行排序。将用户连接到组的表:user_r_group:IDUser_IDGroup_ID111231321412显示用户参加了哪些事件的表格:activities_attended:IDActivity_IDUser_ID111我正在寻找的结果:User_IDAttendings133221有没有办法写一个mysql_query来实现这个?确实有这种感觉。还是我需要用查询组合来解决PHP中的循环问题?我已经查看了jointables的方法,我稍微熟悉ORD

mysql - 按另一个表列 mysql 排序

我有两个表,messages和threadmessages是主表,而thread是我保持两个用户之间对话的地方。我只想从messages表中选择并按thread_id从thread表中排序。我正在使用下面的sql,但它没有按我想要的那样排序。我的目标是当新消息插入到thread表时,使messages表中的父消息出现在顶部。有人知道吗?SELECTm.*FROMmessagesASmJOINthreadAStONt.thread_id=m.idWHERE(m.to_user=?ANDm.deleted!=?ANDm.del2!=?)OR(m.from_user=?ANDm.conver